package cc.fine.svc.main.service.rel;

import cc.fine.svc.main.bean.po.RelUserFan;
import cc.fine.svc.main.bean.po.TblUser;
import com.baomidou.mybatisplus.extension.service.IService;

import java.util.List;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author wyihe
 * @since 2023-10-29
 */
public interface RelUserFanService extends IService<RelUserFan> {

    /**
     * 关注用户
     * 增加userCount的被关注数量和关注数量
     * @param fan
     */
    void follow(RelUserFan fan);

    /**
     * 获取关注列表，
     * page从0开始的
     * @param userId
     * @param page
     * @param limit
     * @return
     */
    List<TblUser> fans(String userId, Integer page, Integer limit);

    /**
     * 取消关注
     * @param fan
     */
    void disFollow(RelUserFan fan);

    /**
     * 是否关注
     * 返回0，未关注
     * 1，已关注
     * 2，互关
     * @param followerId
     * @param masterId
     * @return
     */
    int isFan(String followerId, String masterId);

}
